"use strict";

saapsta.controller("EmpresaController", function($rootScope, $scope, EmpresaDAO, rota) {
    EmpresaDAO.criarTabela();
    $rootScope.secao = "Empresas";

    $scope.listarEmpresas = rota.listarEmpresas;
    $scope.criarEmpresa = rota.criarEmpresa;
    $scope.editarEmpresa = rota.editarEmpresa;

    $scope.listarObras = rota.listarObras;

    $scope.voltar = rota.voltar;

    $scope.inserir = function() {
        EmpresaDAO.inserir($scope.empresa.nome);
        $scope.listar();
        $scope.listarEmpresas();
    };

    $scope.deletar = function() {
        EmpresaDAO.deletar($scope.empresa.id);
        $scope.listar();
        $scope.listarEmpresas();
    };

    $scope.editar = function() {
        EmpresaDAO.editar($scope.empresa);
        $scope.listar();
        $scope.listarEmpresas();
    };

    $scope.listar = function() {
        $scope.empresas = EmpresaDAO.listar(function(empresas) {
            $scope.$apply(function() {
                $scope.empresas = empresas;
            });
        });
    };


    function init() {
        $scope.listar();

        var id = parseInt(rota.parametros.id, 10);

        if (id) {
            $scope.empresa = EmpresaDAO.buscar(id, function(empresa) {
                $scope.$apply(function() {
                    $scope.empresa = angular.copy(empresa);
                });
            });
        }
    }

    init();
});